package q01_TwoNum_Sum;

import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;

public class Solution {
    public static void main(String[] args) {

        Integer[] a = {1,2,3,4,5};
        Arrays.sort(a,(o1, o2)-> o2 - o1);
        System.out.println(Arrays.toString(a));
        // System.out.println("两数之和");
    }

    /**
     * 这里的核心思想是遍历一遍解决问题
     */
    public static int[] twoSum(int[] nums, int target) {
        Map<Integer, Integer> hashtable = new HashMap<Integer, Integer>();
        for (int i = 0; i < nums.length; ++i) {
            if (hashtable.containsKey(target - nums[i])) {
                return new int[]{hashtable.get(target - nums[i]), i};
            }
            hashtable.put(nums[i], i);
        }
        return new int[0];
    }

    public static int[] twoSum1(int[] nums, int target) {
        //int[] a = new int[2];
        for(int i = 0;i < nums.length; i++){

            for(int j = i+1;j < nums.length;j++){
                if(nums[i] + nums[j] == target){
                    int[] a = {i,j};
                    return a;
                }
            }

        }

        return new int[0];
    }

    

}
